package entidades;

import gestordeentidades.persistance.DataBaseObject;
import java.util.Objects;

/**
 * Trabalho DAS - 2014/2015
 * @author a21210380, a21190325, a21210392
 */
public class DesenhoDinamico extends DataBaseObject {
    private int z;
    private String caminhoDoFicheiro;

    public DesenhoDinamico(int z, String caminhoDoFicheiro) {
        this.z = z;
        this.caminhoDoFicheiro = caminhoDoFicheiro;
    }
    
    public DesenhoDinamico(DesenhoDinamico desenhoDinamico) {
        this.z = desenhoDinamico.getZ();
        this.caminhoDoFicheiro = desenhoDinamico.getCaminhoDoFicheiro();
    }

    public String getCaminhoDoFicheiro() {
        return caminhoDoFicheiro;
    }

    public DesenhoDinamico setCaminhoDoFicheiro(String caminhoDoFicheiro) {
        this.caminhoDoFicheiro = caminhoDoFicheiro;
        return this;
    }
    
    public int getZ() {
        return z;
    }

    public DesenhoDinamico setZ(int z) {
        this.z = z;
        return this;
    }
    
    public DesenhoDinamico set(DesenhoDinamico desenhoDinamico) {
        this.caminhoDoFicheiro = desenhoDinamico.getCaminhoDoFicheiro();
        this.z = desenhoDinamico.getZ();
        return this;
    }
    
    @Override
    public boolean equals(Object obj) {
        if (obj == null) {
            return false;
        }
        if (obj == this) {
            return true;
        }
        if (obj instanceof DesenhoDinamico) {
            DesenhoDinamico c = (DesenhoDinamico) obj;
            return caminhoDoFicheiro.equals(c.getCaminhoDoFicheiro()) && z == c.getZ();
        }
        return false;
    }

    @Override
    public int hashCode() {
        int hash = 7;
        hash = 17 * hash + this.z;
        hash = 17 * hash + Objects.hashCode(this.caminhoDoFicheiro);
        return hash;
    }
}
